n月刊ラムダノート Vol.5
https://scrapbox.io/files/694cf03b90a57f2698a4996a.webp
より基本的な言語要素を使った式への最終的な変換される構文のこと(syntactic sugar)
性質ベーステスト
property-based test
関数が満たすべき性質そのものをテストとして記述してその関数への入力例をランダムまたは列挙的に生成してそれらの入力に対して記述した性質が成立しているかを調べるテスト手法
歴史的経緯により、Monad の定義に使われているのはreturn ですが、Monad のスーパークラスであるApplicative にはpure メソッドが要求されており、Monad ではpure とreturn が一致することが要求されています。return は他の言語では関数を脱出する際に使われるのに対し、Monadでは値をモナドに包む効果しかなく初心者の誤解の種になっています。こういった経緯から、近年ではreturn よりもpure が使われることが多くなっています。
へーrkasu.icon
そもそもpureってなんだ?
returnと同じ
副作用のない、最小限のコンテキストで値を包む
リスト内表記はよく使っていたがdoは結構雰囲気で使っていたなrkasu.icon
やべほとんどわからなかった
でもdoがsyntactic sugarであることとモナドっぽいものがなにかは1ミリぐらい理解した
作りながら考えるエフェクトシステム
型がついているだけでは作用があるかわからない